二进制是信息技术中常用的数制。二进制的基数为2,进位规则“逢二进一”,借位规则“借一当二”。
一、十进制转换至二进制
通常采用“除二取余,逆序连接”方法。
(13)52=(00110100)2
二、二进制转换为十进制
采用“权值展开”方法。
(1101)2=(1*23+1*22+0*21+1*20)10=(8+4+0+1)10=(13)10
三、推广
类似地,我们可以使用以上方法来解决16进制或8进制的互相转化。
(AAEE)16=(10*163+10*162+14*161+14*160)=(40960+2560+224+14)10=(43758)10
四、实现
计算某数的二进制数有多少位
int n, num = 0;
cin >> n;
do {
num++;
n /= 2;
} while(n != 0);
cout << num;